#pragma once

namespace ManagedVC1
{
	public ref class Filters
	{
	private:
		bool m_Denoise, m_InLoop, m_Median, m_OverlapSmoothing, m_NoiseEdgeRemoval;
	public:
		property bool UseDenoise
		{
			bool get() { return m_Denoise; }
			void set(bool value)
			{
				m_Denoise = value;
			}
		}

		property bool UseInLoop
		{
			bool get() { return m_InLoop; }
			void set(bool value)
			{
				m_InLoop = value;
			}
		}

		property bool UseMedian
		{
			bool get() { return m_Median; }
			void set(bool value)
			{
				m_Median = value;
			}
		}

		property bool UseOverlapSmoothing
		{
			bool get() { return m_OverlapSmoothing; }
			void set(bool value)
			{
				m_OverlapSmoothing = value;
			}
		}

		property bool UseNoiseEdgeRemoval
		{
			bool get() { return m_NoiseEdgeRemoval; }
			void set(bool value)
			{
				m_NoiseEdgeRemoval = value;
			}
		}
	};
}